}
+static void sedf_insert_vcpu(const struct scheduler *ops, struct vcpu *v)
+{
+ if ( !is_idle_vcpu(v) )
+ {
+ extraq_check(v);
+ }
+ else
+ {
+ EDOM_INFO(v)->deadl_abs = 0;
+ EDOM_INFO(v)->status &= ~SEDF_ASLEEP;
+ }
+}
+
static void *sedf_alloc_vdata(const struct scheduler *ops, struct vcpu *v, void *dd)
{
struct sedf_vcpu_info *inf;
INIT_LIST_HEAD(&(inf->list));
INIT_LIST_HEAD(&(inf->extralist[EXTRA_PEN_Q]));
INIT_LIST_HEAD(&(inf->extralist[EXTRA_UTIL_Q]));
-
- if ( !is_idle_vcpu(v) )
- {
- extraq_check(v);
- }
- else
- {
- inf->deadl_abs = 0;
- inf->status &= ~SEDF_ASLEEP;
- }
return inf;
}
.init_domain = sedf_init_domain,
.destroy_domain = sedf_destroy_domain,
+ .insert_vcpu = sedf_insert_vcpu,
+
.alloc_vdata = sedf_alloc_vdata,
.free_vdata = sedf_free_vdata,
.alloc_pdata = sedf_alloc_pdata,